package com.easyadmin.modules.sys.mapper;

import com.easyadmin.modules.sys.dto.HomeStatsDTO;
import com.easyadmin.modules.sys.dto.OrderCountDTO;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

import com.easyadmin.modules.sys.domain.BCustomerInfo;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;

/**
 * 客户信息Mapper接口
 *
 * @author mars
 * @date 2025-02-14
 */
@Mapper
public interface BCustomerInfoMapper extends BaseMapper<BCustomerInfo> {
    /**
     * 查询客户信息列表
     *
     * @param bCustomerInfo 客户信息
     * @return 客户信息集合
     */
    List<BCustomerInfo> selectBCustomerInfoList(BCustomerInfo bCustomerInfo);

    /**
     * 获取销售首页统计
     *
     * @param userId 用户ID
     * @return 首页统计数据
     */
    HomeStatsDTO selectHomeSalesStats(String userId);

    /**
     * 获取销售首页统计
     *
     * @param days   天数
     * @param userId 用户id
     * @return 订单统计
     */
    List<OrderCountDTO> selectOrderCountByDateRange(@Param("days") Integer days, @Param("userId") String userId);

    /**
     * 管理员统计
     *
     * @param days days
     * @return List
     */
    List<OrderCountDTO> selectOrderCountByManager(@Param("days") Integer days, @Param("userId") String userId);

    /**
     * 管理员提成金额
     *
     * @return HomeStatsDTO
     */
    HomeStatsDTO selectHomeSalesStatsByManager(String userId);


}
